Bot Group: Sireus in Sireus

Import data from Prometheus that we exported, so we can monitor and execute commands on ourself

Bots

Select one of the bots to see Sireus working on an individual agent level, which is where the scoring and Actions take place.

Name States
App In Use.Default
Database In Use.Default
Edge In Use.Default
Sireus in Sireus In Use.Default

Configuration Data

For the purpose of the demo, these are not editable, but that will be added after the Design RFC is complete.

This is the configuration data that creates the Sireus Decision System.

Queries

Queries collect metrics from Prometheus, so we can populate variables.

Name Query Server Info
Sireus Bot Group Counts sum(sireus_bot_exists) by (bot_group) prometheus_primary How many Bots are in each Bot Group in Sireus?

Variables

Variables population has two phases, extracting from Queries, and synthesizing new variables by evaluating expression on from queried variables.

Name Type Query Name Query Key Range Start Range End Invert
bot_count Sireus Bot Group Counts 1 1 false

States

States are specialized State Machines, they only go forward or reset. They can skip entries forward. The combination of several state pipelines allows us a lot of expression about what the current state of the operational system is.

Only moving forward or resetting removes inner loops of the state machines where it can be stuck. The entire state pipeline is a loop that will find the appropriate state on reset.

Name Info States
In Use Is there at least 1 user using the demo? Default, In Use, Abandoned

Lock Timers

Lock Timers can be required by Actions before they can run, so you can lock concurrency, and are given a timeout so that they will always unlock later, and the system never gets stuck.

Name Type Info
Single Bot Lock 1 Per bot lock, so that each bot can operate independently. Use for Node or Agent level control.
Full Bot Group Lock 0 Lock for controlling the entire Bot Group. Use for Service or Platform level control.